package com.alameda.provider.history;

import com.alameda.history.api.ApVideoHistoryProvider;
import com.alameda.history.dto.ApVideoHistoryDTO;
import com.alameda.history.vo.ApVideoHistoryVO;
import com.alameda.service.history.ApVideoHistoryService;
import org.apache.dubbo.config.annotation.DubboService;
import org.springframework.beans.factory.annotation.Autowired;

import java.util.List;

/**
 * 视频播放历史记录 同步接口层 具体实现
 *
 * @author Lv
 * @date 2024/10/09
 */
@DubboService
public class ApVideoHistoryProviderImpl implements ApVideoHistoryProvider {

    @Autowired
    private ApVideoHistoryService apVideoHistoryService;

    /**
     * 删除播放记录
     *
     * @param idList 媒体文件id集合
     * @return
     */
    @Override
    public Boolean removeByMediaIdList(List<Long> idList) {
        return apVideoHistoryService.removeByMediaIdList(idList);
    }

    /**
     * 修改播放记录信息
     *
     * @param apVideoHistoryDTO 视频播放历史记录信息
     * @return
     */
    @Override
    public Boolean updateMediaHistory(ApVideoHistoryDTO apVideoHistoryDTO) {
        return apVideoHistoryService.updateMediaHistory(apVideoHistoryDTO);
    }

    /**
     * 读取播放历史记录信息
     *
     * @param apVideoHistoryDTO 视频播放历史记录信息
     * @return
     */
    @Override
    public List<ApVideoHistoryVO> loadApVideoHistory(ApVideoHistoryDTO apVideoHistoryDTO) {
        return apVideoHistoryService.loadApVideoHistory(apVideoHistoryDTO);
    }

    /**
     * 批量修改播放历史记录信息
     *
     * @param apVideoHistoryDTOList 视频播放历史记录信息
     * @return
     */
    @Override
    public Boolean updateMediaHistoryBatch(List<ApVideoHistoryDTO> apVideoHistoryDTOList) {
        return apVideoHistoryService.updateMediaHistoryBatch(apVideoHistoryDTOList);
    }
}
